﻿using System;
using System.Collections.Generic;

namespace Controllers
{
    //分页模型
    public class Pagination
    {
        public int TotalCount { get; set; }
        public int NumPerPage { get; set; }
        public int PageNumShown { get; set; }
        public int CurrentPage { get; set; }
    }

    public class DeptDTO
    {
        public int Id { get; set; }
        public string Text { get; set; }
        public int OrderNo { get; set; }
        public string IsValid { get; set; }
        public string Remarks { get; set; }
    }

    public class EmpBasicInfo
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public string JobNo { get; set; }
        public IList<EmpRole> EmpRoles { get; set; }
        public IList<EmpDepPosition> EmpDepPos { get; set; }
    }

    //返回员工记录的数据格式
    public class EmpProfileWithDep
    {
        public int Id { get; set; }
        public string JobNo { get; set; }
        public string Name { get; set; }
        public int DeptId { get; set; }
        public string Dep { get; set; }
        public string Mobile { get; set; }
        public string TelExt { get; set; }
        public int? ShortNo { get; set; }
        public string IdAddress { get; set; }
    }

    //按部门查找员工,递归查询所有子部门
    public class EmpIDDept
    {
        public int PosId { get; set; }
        public int Id { get; set; }
        public string Name { get; set; }
    }

    class FileAuthed
    {
        public int Id { get; set; }
        public int? Pid { get; set; }
        public string Name { get; set; }
        public string Type { get; set; }
        public string RealName { get; set; }
        public int? Size { get; set; }
        public DateTime CreatTime { get; set; }
        public int? OwnerId { get; set; }
        public int OrderNo { get; set; }
        public DateTime? LastUpdateTime { get; set; }
        public int? LastUpdaterId { get; set; }
        public int StatusId { get; set; }
        public int? FromId { get; set; }
        public string FromName { get; set; }
        public int? ToId { get; set; }
        public int? AuthType { get; set; }
        public int? AuthLevel { get; set; }
    }

    class EmpAuthed
    {
        public int Id { get; set; }
        public int FileId { get; set; }
        public int FromId { get; set; }
        public int ToId { get; set; }
        public int AuthType { get; set; }
        public bool AuthLevel { get; set; }
        public DateTime AuthDate { get; set; }
        public string Name { get; set; }
    }

    class WeeklyDTO
    {
        public string FormNo { get; set; }
        public int EmpId { get; set; }
        public string EmpName { get; set; }
        public DateTime CreatDate { get; set; }
        public DateTime BeginDate { get; set; }
        public DateTime EndDate { get; set; }
        public string Summary { get; set; }
        public string TxtPlan { get; set; }
        public string Suggestion { get; set; }
        public string Inspiration { get; set; }
        public string Improve { get; set; }
        public int StatusId { get; set; }
        public int? CheckEmpId { get; set; }
    }

    class VehicleDTO
    {
        public string FormNo { get; set; }
        public int EmpId { get; set; }//申请人,不一定是用车人
        public string EmpName { get; set; }
        public DateTime PreStartTime { get; set; }
        public DateTime PreEndTime { get; set; }
        public string Vehicle { get; set; }
        public string Cause { get; set; }
        public int StatusId { get; set; }
        public int? CheckEmpId { get; set; }
    }

    class EvectionDTO
    {
        public string FormNo { get; set; }
        public int EmpId { get; set; }//申请人,不一定是出差人
        public string EmpName { get; set; }
        public DateTime PreStartTime { get; set; }
        public DateTime PreEndTime { get; set; }
        public string Travel { get; set; }
        public string Cause { get; set; }
        public int StatusId { get; set; }
        public int? CheckEmpId { get; set; }
    }

    class OvertimeDTO
    {
        public string FormNo { get; set; }
        public int EmpId { get; set; }//申请人,只能是加班人
        public string EmpName { get; set; }
        public DateTime PreStartTime { get; set; }
        public DateTime PreEndTime { get; set; }
        public string Cause { get; set; }
        public int StatusId { get; set; }
        public int? CheckEmpId { get; set; }
    }

    public class VacationDTO
    {
        public string FormNo { get; set; }
        public int EmpId { get; set; }//申请人
        public string EmpName { get; set; }
        public string VacationType { get; set; }
        public decimal DaysCnt { get; set; }
        public DateTime PreStartTime { get; set; }
        public DateTime PreEndTime { get; set; }
        public string Cause { get; set; }
        public int StatusId { get; set; }
        public int? CheckEmpId { get; set; }
    }

    class PerchaseDTO
    {
        public string FormNo { get; set; }
        public int EmpId { get; set; }//申请人
        public string EmpName { get; set; }
        public string GoodsNames { get; set; }
        public decimal Cost { get; set; }
        public string Cause { get; set; }
        public int StatusId { get; set; }
        public int? CheckEmpId { get; set; }
    }

    class MeetingRoomDTO
    {
        public string FormNo { get; set; }
        public int EmpId { get; set; }//申请人
        public string EmpName { get; set; }
        public DateTime PreStartTime { get; set; }
        public DateTime PreEndTime { get; set; }
        public string RoomName { get; set; }
        public int IsNeedProjector { get; set; }
        public string Cause { get; set; }
        public int StatusId { get; set; }
        public int? CheckEmpId { get; set; }
    }

    class ReceptionDTO
    {
        public string FormNo { get; set; }
        public int EmpId { get; set; }//申请人
        public string EmpName { get; set; }
        public string Customer { get; set; }
        public string PeopleCnt { get; set; }
        public string Cause { get; set; }
        public int StatusId { get; set; }
        public int? CheckEmpId { get; set; }
    }

    public class AuditionDTO
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public int DeptId { get; set; }
        public string DeptName { get; set; }
        public string Position { get; set; }
        public string Phone { get; set; }
        public string Interviewer { get; set; }
        public string Reminder { get; set; }
        public DateTime? InterviewTime { get; set; }
        public string Result { get; set; }
    }

    public class DutyDTO
    {
        public DateTime DutyDate { get; set; }
        public int EmpId { get; set; }
        public int DeptId { get; set; }
        public int PosId { get; set; }
        public string Name { get; set; }
        public string TelExt { get; set; }
    }

    public class BirthdayBlessDTO
    {
        public string FromName { get; set; }
        public string BlessContent { get; set; }
        public DateTime BlessDate { get; set; }
    }

    public class InviteDTO
    {
        public string FormNo { get; set; }
        public int EmpId { get; set; }
        public string EmpName { get; set; }
        public string DeptName { get; set; }
        public string Position { get; set; }
        public int ReqNum { get; set; }
        public DateTime OnDutyDate { get; set; }
        public int StatusId { get; set; }
        public int? CheckEmpId { get; set; }
    }

    public class FileReadLogDTO
    {
        public string Reader { get; set; }
        public DateTime ReadTime { get; set; }
        public int ActionId { get; set; }
    }

    public class TrainNeedDTO
    {
        public string FormNo { get; set; }
        public int DeptId { get; set; }
        public string DeptName { get; set; }
        public int EmpId { get; set; }
        public string EmpName { get; set; }
        public DateTime CreatDate { get; set; }
        public int StatusId { get; set; }
    }

    public class RemindDTO
    {
        public string Affair { get; set; }
        public DateTime RemindTime { get; set; }
    }

    public class DocumentDTO
    {
        public int Id { get; set; }
        public int? Pid { get; set; }
        public string Name { get; set; }
        public DateTime CreatTime { get; set; }
        public int OwnerId { get; set; }
        public int OrderNo { get; set; }
    }

    public class AuthedFilesDTO
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public int Cnt { get; set; }
    }

    public class ReqSignDTO
    {
        public string FormNo{ get; set; }
        public string ReqTypeName{ get; set; }
        public string Name { get; set; }
        public int EmpId { get; set; }
        public DateTime ReqDate { get; set; }
    }

    public class CardSignDTO
    {
        public string FormNo { get; set; }
        public string Name { get; set; }
        public string Text { get; set; }
        public string Ym { get; set; }
        public string Status { get; set; }
        public DateTime ReqDate { get; set; }
    }

    public class OptionDTO
    {
        public char Value { get; set; }
        public string Text { get; set; }
        public bool IsChecked { get; set; }
    }
    public class ResultDTO
    {
        public string Name { get; set; }
        public decimal Score { get; set; }
    }

    //资产维护
    public class AssetDTO
    {
        public string No { get; set; }
        public string Sn { get; set; }
        public string Name { get; set; }
        public string Class { get; set; }
        public string Model { get; set; }
        public string Spec { get; set; }
        public string Unit { get; set; }
        public string Supplier { get; set; }
        public string Price { get; set; }
        public DateTime? BuyDate { get; set; }
        public string Status { get; set; }

        public int KeeperId { get; set; }
        public string Keeper { get; set; }
        public DateTime? DistributeDate { get; set; }
        public int? DueTime { get; set; }
        public string Remarks { get; set; }
    }

    public class PromotionDTO
    {
        public int Id { get; set; }
        public DateTime? StartDate { get; set; }
        public DateTime EndDate { get; set; }
        public string Duty { get; set; }
        public string Text { get; set; }
        public string Name { get; set; }
    }

    public class CardLogDTO
    {
        public string Text { get; set; }
        public string Name { get; set; }
        public DateTime CardTime { get; set; }
        public string Ip { get; set; }
    }
    public class IMCoopschemeDTO
    {
        public int Id { get; set; }
        public string Grade { get; set; }
        public int? LowerQuantity { get; set; }
        public int? HigherQuantity { get; set; }
        public decimal? InvestorRate { get; set; }
        public decimal? GuanXiangRate { get; set; }
        public decimal? IMRate { get; set; }
        public int OrderNo { get; set; }
        public string Remarks { get; set; }
    }
    public class IMProfileDTO
    {
        public int Id { get; set; }
        public string Grade { get; set; }
        public string IMNO { get; set; }
        public string Password { get; set; }
        public string Name { get; set; }
        public string Sex { get; set; }
        public string EduLevel { get; set; }
        public string GraduateFrom { get; set; }
        public string IDNO { get; set; }
        public string Address { get; set; }
        public string Tel { get; set; }
        public string EMail { get; set; }
        public string UrgentContacter { get; set; }
        public string UrgentContacterTel { get; set; }
        public bool IsValid { get; set; }
    }
    public class InvestorDTO
    {
        public int Id { get; set; }
        public string InvestorNO { get; set; }
        public string Name { get; set; }
        public string Sex { get; set; }
        public string IDNO { get; set; }
        public string Tel { get; set; }
        public string EMail { get; set; }
        public string Address { get; set; }
        public string EduLevel { get; set; }
        public string MaritalStatus { get; set; }
        public string Occupation { get; set; }
        public string Income { get; set; }
        public string Character { get; set; }
        public string Marketer { get; set; }
        public string IM { get; set; }
        public string StarLevel { get; set; }
        public string CommissionRate { get; set; }
        public string InvestMSG { get; set; }
        public string RiskLevel { get; set; }
        public string BankName { get; set; }
        public string BankAccount { get; set; }
        public string Brokerage { get; set; }
        public string Remarks { get; set; }
    }
}